The present invention is directed to a router topology having redundancy, and, more particularly, a router topology that decreases the number of outputs affected in the event of any single point failure in a crosspoint or crossbar module.
Circuit switching has long been used to permit the shared use of various resources, such as cameras, tape recorders, disk storage, or special effects generators, among a number of users. Other equipment may also be connected with switched circuits in order to produce and distribute the necessary signals associated with broadcasting a television signal, producing a movie, developing a commercial, or other similar activities. The majority of circuit switching is carried out with crosspoint or crossbar matrices similar to those used by telecommunications providers for connecting telephone calls, or switching higher bandwidth consolidated telephone signals.
In a broadcast facility, it is very important that xe2x80x9con-airxe2x80x9d signals do not fail. Traditionally, in order to reach this goal, a router system had to be fully redundant. FIG. 1 illustrates a redundant router system according to the prior art. The router system 10 is an M input by N output router. It is actually configured as two M by N routers 12, followed by N, 2 input by 1 output switches 14. The corresponding input of each router 12 is fed the same signal, and the N outputs are likewise connected in corresponding order to the N, 2xc3x971 switches 14. An input distribution component formed by fan-out amplifiers 16 is used to distribute each input to each Mxc3x97N switch 12. Within each router 12 there may be multiple crosspoint or crossbar matrices, input modules, and output modules in any of a number of known configurations providing the necessary switch dimensions. The switch 12 can also be used with port oriented routers whereby input-output circuit pairs share a common connector and port interface to the switch without any loss of generality. The output switches 14 normally select outputs from only one of the routers 12 to appear at their respective outputs, however, if there is a failure in the router the output switches 14 are receiving signals from, the output switches 14 select output signals from the alternate router 12 to appear at their respective outputs.
An assumption is made that the 2xc3x971 switches 14 are simpler than the Mxc3x97N switches 12 and therefore more reliable. In addition, the 2xc3x971 switches 14 are individually repairable and in no way interrelated to each other. Therefore, a single failure in the system will affect at most a single output.
As the size of the Mxc3x97N core has grown larger and larger, the topology shown in FIG. 1 becomes too complicated, large and expensive. For telecommunications purposes, the Mxc3x97N core can be blocking, i.e., there are not enough crosspoint elements to guarantee that every input may be connected to at least one output at any given instant. In addition, such a switch also does not need to be able to couple any input to any subset of outputs, including all or some of the available outputs. Therefore, in order to save crosspoints and cost, these routers have become multistage matrices of 3 or more layers. Broadcast applications still demand a non-blocking structure where any input may be connected to any single output, group of outputs, or every output, and so the geometric growth in crosspoint cost and size has contributed to the decline of the approach shown in FIG. 1.
Since fully redundant routers are space and cost prohibitive, and recognizing that routers are made of a number of modules for inputs, outputs and crosspoints, many broadcast and telecommunications installations are designed so that the effect of a single card failure is minimized without backup. For example, a broadcast facility may have a master control studio responsible for the last switching and production details of a television program prior to broadcast. This studio could have 4 unique signals from which to choose. If all of these signals were on a single input or output card in the switch matrix, and that single card failed, there would be nothing available to broadcast on air. However, if the 4 inputs were distributed such that each input was on a separate module and likewise each output was on a separate module, then should any one module fail, there would still be 3 signals left for the master control studio. While such a technique is not ideal, it is satisfactory and requires no additional router frames or modules. How well this approach works is based on the number of inputs and outputs, or ports if a port oriented router is used to distribute inputs and outputs, implemented on a given assembly. This number can be as small as 2 and as large as 32 in contemporary router designs.
One limitation with this approach, is that crosspoint technology has become very dense with thousands of crosspoints implemented in a single chip. In order to minimize total system size and cost, crosspoint building blocks of 128xc3x9732 and 256xc3x9764 are common in today""s routers. Once crosspoint cards are this big, there may only be two or three in an entire system, therefore the impact block is substantial if a crosspoint card should fail. This limits the utility of the aforementioned approach to minimize failure impact without paying for full backup redundancy. For most systems, an empirical limit of 8 or 16 is considered to be the maximum allowable impact block size.
In other types of systems, an approach called N on 1 redundancy has become popular. A computer memory system uses this approach. In a simple example, two separate hard drives are required for caching and storing intermediate data so that a given software algorithm can execute correctly. In a classic scenario, two drives would be needed to back this system up in case of failure of either drive. However, if the drives could share common data input and output busses, then one drive could be used to back up either of the other two. There is now the need to be able to intelligently assign the standby drive to the address space of either primary drive. This is easily accomplished with some additional hardware and software. While backing up disk drives at a ratio of 2 to 1 is probably not very cost effective, there are many examples today where the backup ratio is much larger, i.e., 10 or 25 to 1. In these cases, the use of 1 disk, rather than 10 or 25, is very cost effective especially provided the application requires only a statistically small loss, rather than an absolute guarantee of zero loss.
There is thus a need for a simple compact and cost effective system that provides the necessary redundancy for broadcast routers.
According to a first aspect of the invention, there is provided a router having I inputs and O outputs. The router includes P input modules, N crosspoint modules, a redundant crosspoint module and M output modules. Each input module receives I/P of I inputs. Each crosspoint module receives I inputs and outputs O/N outputs per module and the redundant crosspoint module which receives I inputs and outputs O/N outputs. Each output module receives O/N outputs per module from a particular N crosspoint module and a corresponding O/N outputs from the redundant module. According to a second aspect of the present invention, there is provided router having I inputs and O outputs. The router includes N crosspoint modules, P input module. According to a crosspoint module and M output modules. Each of the N crosspoint modules has I inputs and O/N outputs. Each input module has I/P inputs and I/P outputs wherein each output of each input module is coupled to a unique input of each of N crosspoint modules so that an input received by any of P input modules in propagated to each of N crosspoint modules. Each output module has a first set of O/M inputs, and a second set of O/M inputs and O/M outputs wherein the M output modules are arranged in N groups of M/N output modules and wherein the outputs of each of the N crosspoint modules is coupled in a one-to-one, known order to the first set of O/M inputs of the M/N output modules of a unique one of the N groups of output modules. The redundant crosspoint module has I inputs coupled in a one-to-one manner to the I/P outputs of each of the P input modules, the redundant crosspoint module having O/N outputs coupled to the second set of O/M inputs of the M/N output modules of each of the N groups of output modules in a one-to-one, known order wherein the order of the connections between the outputs of the redundant crosspoint module within a particular group are identical to the connection between that particular group and its associated one of N crosspoint modules so that each group of output modules receives an output from one of the N crosspoint modules and an output from the redundant module. According to a third aspect of the present invention, there is provided a router having I inputs and O outputs. The router includes N crosspoint modules, a redundant crosspoint module, and P port modules. Each port module receives I/P inputs and propagates said inputs identically to corresponding inputs on each of N crosspoint modules and redundant crosspoint module and each port module receives O/P unique inputs from one of N crosspoint modules in a known order, and also receives O/P inputs identically with N-1 other port modules from the redundant crosspoint module in an identical known order. According to a fourth aspect of the present invention, there is provided a method of providing redundancy to a router having I inputs and O outputs. The method includes the steps of: (a) detecting a failure in a crosspoint module supplying an output to an output module; (b) switching between an output provided to the output module from the crosspoint detected in step (a) to a redundant crosspoint module, wherein the redundant crosspoint module is coupled to the output module in an identical order to that of the crosspoint module detected in step (a); (c) detecting a condition to switch back to the crosspoint detected in step (a); and (d) switching back to the crosspoint detected in step (a) only after a first condition is detected by the router. According to a fifth aspect of the present invention, there is provided a method of providing redundancy to a router having I inputs and O outputs. The method includes the steps of:
(a) monitoring a status of every crosspoint module in the router; (b) detecting a failure in one of the crosspoint module supplying an output to an output module; (c) switching between an output provided to the output module from the crosspoint detected in step (b) to a redundant crosspoint module, wherein the redundant crosspoint module is coupled to the output module in an identical order to that of the crosspoint module detected in step (b); (d) detecting a condition to switch back to the crosspoint detected in step (b); (e) switching back to the crosspoint detected in step (b) only after a first condition is detected by the router; (f) ignoring any subsequent failure in any of the crosspoint modules after step (a) until step (e) is performed.